import java.util.ArrayDeque;
import java.util.Deque;
import java.util.HashMap;
import java.util.Map;

//TIP 要<b>运行</b>代码，请按 <shortcut actionId="Run"/> 或
// 点击装订区域中的 <icon src="AllIcons.Actions.Execute"/> 图标。
public class Main {
    public static void main(String[] args) {

    }
    //有效括号
    public boolean isValid(String s) {
        if(s.length()%2==0){
            return false;
        }
        Map<Character, Character> map = new HashMap<Character, Character>(){
            {
                put(')', '(');
                put(']', '[');
                put('}', '{');
            }
        };
        Deque<Character> stack = new ArrayDeque<>();
        for(char c : s.toCharArray()){
            if(!map.containsKey(c)){
                stack.push(c);
            }else {
                if (stack.isEmpty()||stack.pop() != map.get(c)) {
                    return false;
                }
            }
        }
        return stack.isEmpty();

    }
}